The present invention relates in general to hypertext markup language documents, and more particularly, to systems and methods for including accessible metadata, such as role and state information, in conventional hypertext markup language documents.
Hypertext Markup Language (HTML) is derived from a subset of the Standard Generalized Mark-Up Language (SGML) and defines the authoring language used to create HTML documents. A web-browsing software program executed on a computing device allows a computer user to access and interact with HTML documents over the World Wide Web. To promote a more interactive experience, HTML documents may include dynamic objects such as drop-down menus, tree views, checkboxes, and other graphical user interface components, which are designated by role information and optionally state information.
Role information is typically predefined and characterizes the function of a particular object. For example, a role may comprise a checkbox, a menu, a button, a window frame, or other desktop component. State information is associated with a given role and defines a current condition of that role. For example, a dynamic object implementing the role of a checkbox may have an associated state of checked or un-checked; an object implementing the role of a menu may have a state of expanded or collapsed, visible or hidden, etc. Thus, the set of valid states from which a given state may be specified for an associated object often depends on the corresponding role.
Some objects, such as checkboxes, are directly supported by the HTML specification. However, many desirable objects such as menus that dynamically change in response to user interaction are not directly supported in native HTML. In cases where desired objects are not supported directly in HTML, developers of web-based applications often define unique objects by utilizing HTML elements and by programming the desired behavior of such objects in a client-side scripting language.